Skip to content

Add allow_ddm_traffic to PortConfig - #11091

Merged
andrewjstone merged 1 commit into
mainfrom
multirack-join-service-part-3
Aug 20, 2026
Merged

Add allow_ddm_traffic to PortConfig#11091
andrewjstone merged 1 commit into
mainfrom
multirack-join-service-part-3

Conversation

@andrewjstone

Copy link
Copy Markdown
Contributor

This is necessary to both enable front ports for DDM and disable front ports as uplink ports in dpd. Both are necessary for multirack.

It's important to note that this is a temporary fix to get multirack moving. We expect to overhaul the structure of RackNetworkConfig and PortConfig soon. BgpPeer info should likely live outside the port itself and ports should only contain link-level information.

Comment thread sled-agent/tests/integration_tests/early_network.rs Outdated
management_addrs: c.management_ip.map(|ip| vec![ip]),
}),
tx_eq,
allow_ddm_traffic: false,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This isn't necessarily a blocker for this PR, but might impact testing - IIUC, as written, RSS will write any allow_ddm_traffic: true values from the RSS config into the bootstore when it does it initial population of it. But once Nexus starts running, the sync_switch_configuration bg task will send down new bootstore contents with this false set on every port, so you may lose the ddm traffic as soon as Nexus gets started running bg tasks.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Damn. This is a huge problem. I didn't consider that on the proto rack nexus would overwrite the RSS settings immediately. Getting DDM working cross-rack seems unworkable without adding the nexus side. I was really hoping to avoid this until after the initial ddm work.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm going to merge this in to avoid a rebase as on it's own it doesn't break anything. Then I'll work on the nexus/crdb side under protest.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The fix turned out to not be as bad as I thought.
#11117

Base automatically changed from multirack-join-service-part-2 to main August 20, 2026 02:30
@andrewjstone
andrewjstone force-pushed the multirack-join-service-part-3 branch from 4109307 to 62a063c Compare August 20, 2026 03:13
@andrewjstone
andrewjstone enabled auto-merge (squash) August 20, 2026 03:43
@andrewjstone
andrewjstone merged commit 7beb2dd into main Aug 20, 2026
20 checks passed
@andrewjstone
andrewjstone deleted the multirack-join-service-part-3 branch August 20, 2026 06:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants